package bb.lanxing.lib.devices.api;

public interface PeerDevice {
    int PROTOCOL_BLE = 1;
    int PROTOCOL_ANT_PLUS = 2;
    int STATE_NONE = 0;
    int STATE_CONNECTING = 1;
    int STATE_CONNECTED = 2;
    int STATE_DISCONNECTING = 3;
    int STATE_DISCONNECTED = 4;
    int STATE_DEVICE_STATE_FREE = 17;
    int STATE_DEVICE_STATE_TRANSFER = 18;

    void close();

    void connect();

    void disconnect();

    String getAddress();

    int getConnectionState();

    String getCurrentFileNameInTransfer();

    int getDeviceState();

    String getName();

    int getProtocol();

    int getType();

    boolean isConnected();

    boolean isConnecting();

    void registerConnectionListener(ConnectionListener connectionListener);

    void registerStateListener(DeviceStateListener deviceStateListener);

    void setDisConnectFromUser(boolean z);

    void unregisterConnectionListener(ConnectionListener connectionListener);

    void unregisterStateListener(DeviceStateListener deviceStateListener);
}
